package passworks;

import java.util.List;

public abstract class GeneratorBase extends GateBase {

    protected List<Boolean> pattern;
    private int patternPointer;
    protected boolean switchable;


    public GeneratorBase() {
        
    }

    public void NextState(){
        Logger.Print(className, "NextState", Direction.IN, ownID);
        Logger.Print(className, "NextState", Direction.OUT, ownID);
    }

    public void SetOutputs() {
        Logger.Print(className, "SetOutputs", Direction.IN, ownID);
        /*
         * Bemenetek lekerdezese
         */
        for(Wire w : input) {
            w.GetState();
        }
        /*
         * Tenyleges logika (...)
         */

        /*
         * Kimenetek beallitasa
         */
        for(Wire w : output) {
            w.SetStable(true);
            w.SetState(false);
        }

        Logger.Print(className, "SetOutputs", Direction.OUT, ownID);
    }

    public void SetState(boolean s) {
        // kapcsolora beallit, generatorra a switchable letiltja.
        Logger.Print(className, "SetState", Direction.IN, ownID);

        Logger.Print(className, "SetState", Direction.OUT, ownID);
    }

}
